/*
数字 转 布尔值
$v  需要转的值
1 对应 false
2 对应 true
*/
export function changeToBool(bool){
	let res = false
	if(bool == 1){
		res = false
	}else if(bool == 2){		
		res = true
	}
	return res
}

/*
布尔值 转 数字
$v  需要转的值
false 对应 1
true 对应 2
*/
export function changeBoolToNum(bool){
	let res = 1
	if(bool == false){
		res = 1
	}else if(bool == true){		
		res = 2
	}
	return res
}

/*序列化对象 类似于 jquery中的serialize方法*/
export function serialize(data) {
	let url = "";
	for (let k in data) {
		let value = data[k] != undefined ? data[k] : '';
		url += `&${k}=${encodeURIComponent(value)}`;
	}
	return url ? url.substring(1) : '';
}

/*过滤对象中的空值*/
export function filterEmpty(obj) {
	for(var key in obj){
		if(obj[key] == ''){
			delete obj[key];
		}
	}
	return obj
}

/*
设置navbar数据
menuList 		菜单列表
currNavbarID 	当前的navbarID
使用场景 		点击企业列表中的 ‘管理’，计算navbar数据
*/
export function getNavbarByMenuList(menuList, currNavbarID){
	for(let k=0; k<menuList.length; k++){
		if(menuList[k].id == currNavbarID){
			return menuList[k].children
		}
		if(menuList[k].children.length > 0){
			let tmp = getNavbarByMenuList(menuList[k].children, currNavbarID)
			if(tmp != undefined){
				return tmp
			}
		}
	}
}


/*
上传的图片格式为
[
	{
		name: 'food.jpeg',
		url: 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg'
	},
	{
		name: 'girl.jpeg',
		url: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1560679288329&di=172c2c82297e0370c719376481a3efd1&imgtype=0&src=http%3A%2F%2Fhbimg.b0.upaiyun.com%2Ff47f57c43ebfab555a3e42938d75afc8540b1a3d34124-CXO8Sg_fw658'
	}
]
把上面的是个改成下面的格式
[
	url: 'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg',
	url: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1560679288329&di=172c2c82297e0370c719376481a3efd1&imgtype=0&src=http%3A%2F%2Fhbimg.b0.upaiyun.com%2Ff47f57c43ebfab555a3e42938d75afc8540b1a3d34124-CXO8Sg_fw658'
]
注释掉的原因：放到后台运算了，前台运算会改变数据状态
*/
// export function changeUploadFormat(arr){
// 	let res = []
// 	for(let i=0; i<arr.length; i++){
// 		res.push(arr[i].url)
// 	}
// 	return res
// }


/*与上面注释的函数相反*/
export function changeUploadFormatBack(arr){
	let res = []
	for(let i=0; i<arr.length; i++){
		res.push(
			{
				name: '',
				url: arr[i]
			}
		)
	}
	return res
}


/*整理排序的数据，把原来的对象数组中的ID，全部抽出来 arr中必须要有ID*/
export function getSortData(arr){
	let res = []
	arr.forEach((item, index)=>{
		res.push(item.id)
	})
	return res
}


/**
let date = new Date()
dateFormat("YYYY-mm-dd HH:MM:SS", date)  >>> 2019-06-06 19:45:15
 */
export function format (fmt, date) {
    let ret;
    const opt = {
        "Y+": date.getFullYear().toString(),        // 年
        "m+": (date.getMonth() + 1).toString(),     // 月
        "d+": date.getDate().toString(),            // 日
        "H+": date.getHours().toString(),           // 时
        "M+": date.getMinutes().toString(),         // 分
        "S+": date.getSeconds().toString()          // 秒
        // 有其他格式化字符需求可以继续添加，必须转化成字符串
    };
    for (let k in opt) {
        ret = new RegExp("(" + k + ")").exec(fmt);
        if (ret) {
            fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
        };
    };
    return fmt;
}


/*
文件大小 单位转换
filesize   文件大小
*/
export function convertFileUnit(filesize){
	if(filesize >= 1073741824) {
		filesize = Math.round(filesize / 1073741824 * 100) / 100 + ' GB';
	} else if(filesize >= 1048576) {
		filesize = Math.round(filesize / 1048576 * 100) / 100 + ' MB';
	} else if(filesize >= 1024) {
		filesize = Math.round(filesize / 1024 * 100) / 100 + ' KB';
	} else {
		filesize = filesize + ' Byte';
	}
	return filesize;
}


/*
判断是否含有权限
v 				如果是数字，指菜单ID；如果是字符串，菜单表中的apikeyname
permissions 	用的菜单列表
*/
export function judgeAuth(v, permissions){
	// console.log(permissions, 999)
	// console.log(permissions, 999)
	for(let k=0; k<permissions.length; k++){
		if(isNaN(v)){//非数字
			// console.log(permissions[k].apikeyname)
			if(permissions[k].apikeyname == v){
				// console.log(v)
				return true
			}else if(permissions[k].children.length > 0){
				if( judgeAuth(v, permissions[k].children) == true ){
					return true
				}
			}
		}else{//数字
			// 1,31,78,93,100,34,35,38,39
			if(permissions[k].id == v){
				// console.log(permissions[k].id + '-' + v)
				// console.log('yes', permissions[k].id)
				return true
			}else if(permissions[k].children.length > 0){
				// console.log('no', permissions[k].id)
				if( judgeAuth(v, permissions[k].children) ){
					return true
				}
			}
		}
	}
}